#ifndef __MENU_H_
#define __MENU_H_

#include<list>
#include<string>
using namespace std;

class Menu
{
	list<string> m_options_text;
	void displayOptions();

public:
	enum MenuType{ MAIN, CHOOSE_SHAPE, ADD_SHAPE, SAVE, LOAD};  
	//c'tor
	Menu(MenuType which_menu, bool withHiding = true);
	unsigned int getExitOptionNum( ) { return m_options_text.size(); }
	unsigned int choose();
	void changeOption(int option_num, const string &option_text);
	bool isEmpty(){return m_options_text.size() == 0;}
};


#endif